Efficient parallel programming on scalable shared memory systems with High Performance Fortran
Identifieur interne : 000249 ( Main/Exploration ); précédent : 000248; suivant : 000250Efficient parallel programming on scalable shared memory systems with High Performance Fortran
Auteurs : Siegfried Benkner [Autriche] ; Thomas Brandes [Allemagne]Source :
- Concurrency and Computation: Practice and Experience [ 1532-0626 ] ; 2002-07.
Abstract
OpenMP offers a high‐level interface for parallel programming on scalable shared memory (SMP) architectures. It provides the user with simple work‐sharing directives while it relies on the compiler to generate parallel programs based on thread parallelism. However, the lack of language features for exploiting data locality often results in poor performance since the non‐uniform memory access times on scalable SMP machines cannot be neglected. High Performance Fortran (HPF), the de‐facto standard for data parallel programming, offers a rich set of data distribution directives in order to exploit data locality, but it has been mainly targeted towards distributed memory machines. In this paper we describe an optimized execution model for HPF programs on SMP machines that avails itself with mechanisms provided by OpenMP for work sharing and thread parallelism, while exploiting data locality based on user‐specified distribution directives. Data locality does not only ensure that most memory accesses are close to the executing threads and are therefore faster, but it also minimizes synchronization overheads, especially in the case of unstructured reductions. The proposed shared memory execution model for HPF relies on a small set of language extensions, which resemble the OpenMP work‐sharing features. These extensions, together with an optimized shared memory parallelization and execution model, have been implemented in the ADAPTOR HPF compilation system and experimental results verify the efficiency of the chosen approach. Copyright © 2002 John Wiley & Sons, Ltd.
Url:
DOI: 10.1002/cpe.649
Affiliations:
Links toward previous steps (curation, corpus...)
Le document en format XML
<record><TEI wicri:istexFullTextTei="biblStruct"><teiHeader><fileDesc><titleStmt><title xml:lang="en">Efficient parallel programming on scalable shared memory systems with High Performance Fortran</title>
<author><name sortKey="Benkner, Siegfried" sort="Benkner, Siegfried" uniqKey="Benkner S" first="Siegfried" last="Benkner">Siegfried Benkner</name>
</author>
<author><name sortKey="Brandes, Thomas" sort="Brandes, Thomas" uniqKey="Brandes T" first="Thomas" last="Brandes">Thomas Brandes</name>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:9C8815E03D7E899F5B4C05EB1F06038AF562A49A</idno>
<date when="2002" year="2002">2002</date>
<idno type="doi">10.1002/cpe.649</idno>
<idno type="url">https://api.istex.fr/document/9C8815E03D7E899F5B4C05EB1F06038AF562A49A/fulltext/pdf</idno>
<idno type="wicri:Area/Main/Corpus">000992</idno>
<idno type="wicri:explorRef" wicri:stream="Main" wicri:step="Corpus" wicri:corpus="ISTEX">000992</idno>
<idno type="wicri:Area/Main/Curation">000992</idno>
<idno type="wicri:Area/Main/Exploration">000249</idno>
<idno type="wicri:explorRef" wicri:stream="Main" wicri:step="Exploration">000249</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title level="a" type="main" xml:lang="en">Efficient parallel programming on scalable shared memory systems with High Performance Fortran</title>
<author><name sortKey="Benkner, Siegfried" sort="Benkner, Siegfried" uniqKey="Benkner S" first="Siegfried" last="Benkner">Siegfried Benkner</name>
<affiliation wicri:level="1"><country xml:lang="fr">Autriche</country>
<wicri:regionArea>Institute for Software Science, University of Vienna, Liechtensteinstrasse 22, A‐1090 Vienna</wicri:regionArea>
<wicri:noRegion>A‐1090 Vienna</wicri:noRegion>
</affiliation>
</author>
<author><name sortKey="Brandes, Thomas" sort="Brandes, Thomas" uniqKey="Brandes T" first="Thomas" last="Brandes">Thomas Brandes</name>
<affiliation wicri:level="3"><country xml:lang="fr">Allemagne</country>
<wicri:regionArea>Institute for Algorithms and Scientific Computing (SCAI), Fraunhofer Gesellschaft (FhG), Schloß Birlinghoven, D‐53754 St. Augustin</wicri:regionArea>
<placeName><region type="land" nuts="1">Rhénanie-du-Nord-Westphalie</region>
<region type="district" nuts="2">District de Cologne</region>
<settlement type="city">Sankt Augustin</settlement>
</placeName>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series><title level="j">Concurrency and Computation: Practice and Experience</title>
<title level="j" type="abbrev">Concurrency Computat.: Pract. Exper.</title>
<idno type="ISSN">1532-0626</idno>
<idno type="eISSN">1532-0634</idno>
<imprint><publisher>John Wiley & Sons, Ltd.</publisher>
<pubPlace>Chichester, UK</pubPlace>
<date type="published" when="2002-07">2002-07</date>
<biblScope unit="volume">14</biblScope>
<biblScope unit="issue">8‐9</biblScope>
<biblScope unit="page" from="789">789</biblScope>
<biblScope unit="page" to="803">803</biblScope>
</imprint>
<idno type="ISSN">1532-0626</idno>
</series>
<idno type="istex">9C8815E03D7E899F5B4C05EB1F06038AF562A49A</idno>
<idno type="DOI">10.1002/cpe.649</idno>
<idno type="ArticleID">CPE649</idno>
</biblStruct>
</sourceDesc>
<seriesStmt><idno type="ISSN">1532-0626</idno>
</seriesStmt>
</fileDesc>
<profileDesc><textClass></textClass>
<langUsage><language ident="en">en</language>
</langUsage>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en">OpenMP offers a high‐level interface for parallel programming on scalable shared memory (SMP) architectures. It provides the user with simple work‐sharing directives while it relies on the compiler to generate parallel programs based on thread parallelism. However, the lack of language features for exploiting data locality often results in poor performance since the non‐uniform memory access times on scalable SMP machines cannot be neglected. High Performance Fortran (HPF), the de‐facto standard for data parallel programming, offers a rich set of data distribution directives in order to exploit data locality, but it has been mainly targeted towards distributed memory machines. In this paper we describe an optimized execution model for HPF programs on SMP machines that avails itself with mechanisms provided by OpenMP for work sharing and thread parallelism, while exploiting data locality based on user‐specified distribution directives. Data locality does not only ensure that most memory accesses are close to the executing threads and are therefore faster, but it also minimizes synchronization overheads, especially in the case of unstructured reductions. The proposed shared memory execution model for HPF relies on a small set of language extensions, which resemble the OpenMP work‐sharing features. These extensions, together with an optimized shared memory parallelization and execution model, have been implemented in the ADAPTOR HPF compilation system and experimental results verify the efficiency of the chosen approach. Copyright © 2002 John Wiley & Sons, Ltd.</div>
</front>
</TEI>
<affiliations><list><country><li>Allemagne</li>
<li>Autriche</li>
</country>
<region><li>District de Cologne</li>
<li>Rhénanie-du-Nord-Westphalie</li>
</region>
<settlement><li>Sankt Augustin</li>
</settlement>
</list>
<tree><country name="Autriche"><noRegion><name sortKey="Benkner, Siegfried" sort="Benkner, Siegfried" uniqKey="Benkner S" first="Siegfried" last="Benkner">Siegfried Benkner</name>
</noRegion>
</country>
<country name="Allemagne"><region name="Rhénanie-du-Nord-Westphalie"><name sortKey="Brandes, Thomas" sort="Brandes, Thomas" uniqKey="Brandes T" first="Thomas" last="Brandes">Thomas Brandes</name>
</region>
</country>
</tree>
</affiliations>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Wicri/France/explor/AussoisV1/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000249 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 000249 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Wicri/France |area= AussoisV1 |flux= Main |étape= Exploration |type= RBID |clé= ISTEX:9C8815E03D7E899F5B4C05EB1F06038AF562A49A |texte= Efficient parallel programming on scalable shared memory systems with High Performance Fortran }}
This area was generated with Dilib version V0.6.29. |